package com.yuheadline.model.article.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yuheadline.model.article.enums.ArticleStatusEnum;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

/**
 * @author 高翔宇
 * @since 2025/4/19 周六 14:10
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@TableName("article")
public class Article {
    /**
     * id
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 标题
     */
    @TableField("title")
    private String title;

    /**
     * 封面，图片地址
     */
    @TableField("cover")
    private String cover;

    /**
     * 作者id
     */
    @TableField("author_id")
    private Long authorId;

    /**
     * 内容
     */
    @TableField("content")
    private String content;

    /**
     * 文章状态。0：待审核；1：审核通过；2：审核不通过（注意原注释可能存在格式问题，这里修正为标准状态码）
     */
    @TableField("status")
    private ArticleStatusEnum status;

    /**
     * 点赞量（默认0）
     */
    @TableField("likes")
    private Integer likes;

    /**
     * 临时id
     */
    @TableField("temp_id")
    private String tempId;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;
}
